別アカウントにある S3 のオブジェクトを Step Functions の分散マップの入力として利用することは可能ですか

別アカウントにある S3 のオブジェクトを Step Functions の分散マップの入力として利用することは可能ですか

StepFunctions の分散マップの入力として別アカウントの S3 バケットのオブジェクトを利用することはできません。
Clock Icon2024.07.24

困っていること

StepFunctions の分散マップの入力に別アカウントにある S3 のオブジェクトを利用したいです。
どのように設定をすれば可能でしょうか。

どう対応すればいいの?

現状別アカウントにある S3 のオブジェクトを参照するように分散マップを設定することはできません。

下記のドキュメントに記載の通り、 StepFunctions の分散マップの入力で利用する ItemReader はステートマシンを実行するアカウントと同じアカウントでかつ同じリージョンの S3 からのみオブジェクトを参照可能です。

https://docs.aws.amazon.com/ja_jp/step-functions/latest/dg/input-output-itemreader.html#itemreader-iam-policies

Amazon S3 バケットがステートマシンと同じ AWS アカウント と AWS リージョン にあることを確認してください。

別アカウントの S3 バケット内に存在するオブジェクトの内容を分散マップの入力としてご利用いただきたい場合、StepFunctinos にて Lambda 関数を実行する状態を分散マップの前に配置いただき、ItemsPath を利用して前状態の出力を入力として利用するようにご対応ください。

https://docs.aws.amazon.com/ja_jp/step-functions/latest/dg/input-output-itemspath.html

分散マップ状態で ItemsPath を使用できるのは、ワークフローの前のステートから渡された JSON 入力を使用する場合のみです。

参考資料

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.